<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      // 创建AbortController实例
      const controller = new AbortController();
      const signal = controller.signal;

      // 使用fetch并传入signal
      fetch("http://localhost:3000", { signal })
        .then((response) => response.json())
        .then((data) => console.log(111,data))
        .catch((error) => {
          if (error.name === "AbortError") {
            console.log("Fetch request was aborted"); // 打印取消信息
          } else {
            console.error("Fetch error:", error); // 处理其他错误情况
          }
        });

      // 在某个时刻取消请求，例如用户操作或超时逻辑触发
      setTimeout(() => {
        controller.abort(); // 取消请求，例如在3秒后取消请求
      }, 3000);
    </script>
  </body>
</html>
